home *** CD-ROM | disk | FTP | other *** search
Oberon Document | 1995-03-28 | 10.1 KB | 214 lines | [oODC/obnF] |
- Documents.StdDocumentDesc
- Documents.DocumentDesc
- Containers.ViewDesc
- Views.ViewDesc
- Stores.StoreDesc
- Documents.ModelDesc
- Containers.ModelDesc
- Models.ModelDesc
- Stores.ElemDesc
- TextViews.StdViewDesc
- TextViews.ViewDesc
- TextModels.StdModelDesc
- TextModels.ModelDesc
- TextModels.AttributesDesc
- Helvetica
- Helvetica
- Helvetica
- MODULE MacListMgr;
- IMPORT
- SYSTEM, MacTypes,
- QuickDraw := MacQuickDraw, WindowMgr := MacWindowMgr, ControlMgr := MacControlMgr;
- CONST
- UNTAGGED = 1;
- HANDLE = 2;
- CODE = 1;
- TYPE
- Cell* = QuickDraw.Point;
- ListRec* = RECORD (MacTypes.Data)
- rView*: QuickDraw.Rect;
- port*: QuickDraw.GrafPtr;
- indent*: QuickDraw.Point;
- cellSize*: QuickDraw.Point;
- visible*: QuickDraw.Rect;
- vScroll*: ControlMgr.ControlHandle;
- hScroll*: ControlMgr.ControlHandle;
- selFlags*: MacTypes.SignedByte;
- lActive*: BOOLEAN;
- lReserved: MacTypes.SignedByte;
- listFlags*: MacTypes.SignedByte;
- clikTime*: LONGINT;
- clikLoc*: QuickDraw.Point;
- mouseLoc*: QuickDraw.Point;
- lClikLoop*: MacTypes.Ptr;
- lastClick*: Cell;
- refCon*: LONGINT;
- listDefProc*: MacTypes.Handle;
- userHandle*: MacTypes.Handle;
- dataBounds*: QuickDraw.Rect;
- cells*: MacTypes.Handle;
- maxIndex*: INTEGER;
- cellArray*: ARRAY 1 OF INTEGER
- END;
- ListPtr* = POINTER TO ListRec;
- ListHandle* = POINTER [HANDLE] TO ListRec;
- MyLDEF*= PROCEDURE (message: INTEGER; selected: BOOLEAN; VAR cellRect: QuickDraw.Rect;
- theCell: Cell; dataOffset: INTEGER; dataLen: INTEGER; theList: ListHandle);
- MyMatchFunction*=PROCEDURE (cellDataPtr, searchDataPtr: MacTypes.Ptr;
- cellDataLen, searchDataLen: INTEGER): INTEGER;
- MyClickLoop*= PROCEDURE ;
- PROCEDURE [CODE] lNew (rView: QuickDraw.Rect; dataBounds: QuickDraw.Rect; cSize: QuickDraw.Point;
- theProc: INTEGER; theWindow: WindowMgr.WindowPtr;
- drawIt, hasGrow, scrollHoriz, scrollVert: BOOLEAN; sel: INTEGER): ListHandle 0A9H, 0E7H;
- PROCEDURE [CODE] lDispose (lHandle: ListHandle; sel: INTEGER) 0A9H, 0E7H;
- PROCEDURE [CODE] lAddColumn (count: INTEGER; colNum: INTEGER; lHandle: ListHandle; sel: INTEGER): INTEGER 0A9H, 0E7H;
- PROCEDURE [CODE] lAddRow (count: INTEGER; rowNum: INTEGER; lHandle: ListHandle; sel: INTEGER): INTEGER 0A9H, 0E7H;
- PROCEDURE [CODE] lDelColumn (count: INTEGER; colNum: INTEGER; lHandle: ListHandle; sel: INTEGER) 0A9H, 0E7H;
- PROCEDURE [CODE] lDelRow (count: INTEGER; rowNum: INTEGER; lHandle: ListHandle; sel: INTEGER) 0A9H, 0E7H;
- PROCEDURE [CODE] lGetSelect (next: BOOLEAN; VAR theCell: Cell; lHandle: ListHandle; sel: INTEGER): BOOLEAN 0A9H, 0E7H;
- PROCEDURE [CODE] lSetSelect (setIt: BOOLEAN; theCell: Cell; lHandle: ListHandle; sel: INTEGER) 0A9H, 0E7H;
- PROCEDURE [CODE] lSetCell (dataPtr: MacTypes.Ptr; dataLen: INTEGER; theCell: Cell; lHandle: ListHandle; sel: INTEGER) 0A9H, 0E7H;
- PROCEDURE [CODE] lAddToCell (dataPtr: MacTypes.Ptr; dataLen: INTEGER; theCell: Cell; lHandle: ListHandle; sel: INTEGER) 0A9H, 0E7H;
- PROCEDURE [CODE] lGetCellDataLocation (VAR offset, len: INTEGER; theCell: Cell; lHandle: ListHandle; sel: INTEGER) 0A9H, 0E7H;
- PROCEDURE [CODE] lGetCell (dataPtr: MacTypes.Ptr; VAR dataLen: INTEGER; theCell: Cell; lHandle: ListHandle; sel: INTEGER) 0A9H, 0E7H;
- PROCEDURE [CODE] lClick (pt: QuickDraw.Point; modifiers: INTEGER; lHandle: ListHandle; sel: INTEGER): BOOLEAN 0A9H, 0E7H;
- PROCEDURE [CODE] lActivate (act: BOOLEAN; lHandle: ListHandle; sel: INTEGER) 0A9H, 0E7H;
- PROCEDURE [CODE] lUpdate (theRgn: QuickDraw.RgnHandle; lHandle: ListHandle; sel: INTEGER) 0A9H, 0E7H;
- PROCEDURE [CODE] lSetDrawingMode (drawit: BOOLEAN; lHandle: ListHandle; sel: INTEGER) 0A9H, 0E7H;
- PROCEDURE [CODE] lDraw (theCell: Cell; lHandle: ListHandle; sel: INTEGER) 0A9H, 0E7H;
- PROCEDURE [CODE] lAutoScroll (lHandle: ListHandle; sel: INTEGER) 0A9H, 0E7H;
- PROCEDURE [CODE] lScroll (dCols: INTEGER; dRows: INTEGER; lHandle: ListHandle; sel: INTEGER) 0A9H, 0E7H;
- PROCEDURE [CODE] lSearch (dataPtr: MacTypes.Ptr; dataLen: INTEGER; searchProc: MacTypes.Ptr;
- VAR theCell: Cell; lHandle: ListHandle; sel: INTEGER): BOOLEAN 0A9H, 0E7H;
- PROCEDURE [CODE] lSize (listWidth: INTEGER; listHeight: INTEGER; lHandle: ListHandle; sel: INTEGER) 0A9H, 0E7H;
- PROCEDURE [CODE] lCellSize (cSize: QuickDraw.Point; lHandle: ListHandle; sel: INTEGER) 0A9H, 0E7H;
- PROCEDURE [CODE] lNextCell (hNext, vNext: BOOLEAN; VAR theCell: Cell; lHandle: ListHandle; sel: INTEGER): BOOLEAN 0A9H, 0E7H;
- PROCEDURE [CODE] lRect (VAR cellRect: QuickDraw.Rect; theCell: Cell; lHandle: ListHandle; sel: INTEGER) 0A9H, 0E7H;
- PROCEDURE [CODE] lLastClick (lHandle: ListHandle; sel: INTEGER): LONGINT 0A9H, 0E7H;
- (* Creating and Disposing of Lists *)
- PROCEDURE LNew* (rView: QuickDraw.Rect; dataBounds: QuickDraw.Rect; cSize: QuickDraw.Point;
- theProc: INTEGER; theWindow: WindowMgr.WindowPtr;
- drawIt, hasGrow, scrollHoriz, scrollVert: BOOLEAN): ListHandle;
- BEGIN
- RETURN lNew(rView, dataBounds, cSize, theProc, theWindow, drawIt, hasGrow, scrollHoriz, scrollVert, 44H)
- END LNew;
- PROCEDURE LDispose* (lHandle: ListHandle);
- BEGIN
- lDispose(lHandle, 28H)
- END LDispose;
- (* Adding and Deleting Columns of Rows To and From a List *)
- PROCEDURE LAddColumn* (count: INTEGER; colNum: INTEGER; lHandle: ListHandle): INTEGER;
- BEGIN
- RETURN lAddColumn(count, colNum, lHandle, 4H)
- END LAddColumn;
- PROCEDURE LAddRow* (count: INTEGER; rowNum: INTEGER; lHandle: ListHandle): INTEGER;
- BEGIN
- RETURN lAddRow(count, rowNum, lHandle, 8H)
- END LAddRow;
- PROCEDURE LDelColumn* (count: INTEGER; colNum: INTEGER; lHandle: ListHandle);
- BEGIN
- lDelColumn(count, colNum, lHandle, 20H)
- END LDelColumn;
- PROCEDURE LDelRow* (count: INTEGER; rowNum: INTEGER; lHandle: ListHandle);
- BEGIN
- lDelRow(count, rowNum, lHandle, 24H)
- END LDelRow;
- (* Determining or Changing the Selection *)
- PROCEDURE LGetSelect* (next: BOOLEAN; VAR theCell: Cell; lHandle: ListHandle): BOOLEAN;
- BEGIN
- RETURN lGetSelect(next, theCell, lHandle, 3CH)
- END LGetSelect;
- PROCEDURE LSetSelect* (setIt: BOOLEAN; theCell: Cell; lHandle: ListHandle);
- BEGIN
- lSetSelect(setIt, theCell, lHandle, 5CH)
- END LSetSelect;
- (* Accessing and Manipulating Cell Data *)
- PROCEDURE LSetCell* (dataPtr: MacTypes.Ptr; dataLen: INTEGER; theCell: Cell; lHandle: ListHandle);
- BEGIN
- lSetCell(dataPtr, dataLen, theCell, lHandle, 58H)
- END LSetCell;
- PROCEDURE LAddToCell* (dataPtr: MacTypes.Ptr; dataLen: INTEGER; theCell: Cell; lHandle: ListHandle);
- BEGIN
- lAddToCell(dataPtr, dataLen, theCell, lHandle, 0CH)
- END LAddToCell;
- PROCEDURE LGetCellDataLocation* (VAR offset, len: INTEGER; theCell: Cell; lHandle: ListHandle);
- BEGIN
- lGetCellDataLocation(offset, len, theCell, lHandle, 34H)
- END LGetCellDataLocation;
- PROCEDURE LGetCell* (dataPtr: MacTypes.Ptr; VAR dataLen: INTEGER; theCell: Cell; lHandle: ListHandle);
- BEGIN
- lGetCell(dataPtr, dataLen, theCell, lHandle, 38H)
- END LGetCell;
- (* Responding to Events Affecting Lists *)
- PROCEDURE LClick* (pt: QuickDraw.Point; modifiers: INTEGER; lHandle: ListHandle): BOOLEAN;
- BEGIN
- RETURN lClick(pt, modifiers, lHandle, 18H)
- END LClick;
- PROCEDURE LActivate* (act: BOOLEAN; lHandle: ListHandle);
- BEGIN
- lActivate(act, lHandle, 0H)
- END LActivate;
- PROCEDURE LUpdate* (theRgn: QuickDraw.RgnHandle; lHandle: ListHandle);
- BEGIN
- lUpdate(theRgn, lHandle, 64H)
- END LUpdate;
- (* Modifying a List's Appearance *)
- PROCEDURE LSetDrawingMode* (drawIt: BOOLEAN; lHandle: ListHandle);
- BEGIN
- lSetDrawingMode(drawIt, lHandle, 2CH)
- END LSetDrawingMode;
- PROCEDURE LDraw* (theCell: Cell; lHandle: ListHandle);
- BEGIN
- lDraw(theCell, lHandle, 30H)
- END LDraw;
- PROCEDURE LAutoScroll* (lHandle: ListHandle);
- BEGIN
- lAutoScroll(lHandle, 10H)
- END LAutoScroll;
- PROCEDURE LScroll* (dCols: INTEGER; dRows: INTEGER; lHandle: ListHandle);
- BEGIN
- lScroll(dCols, dRows, lHandle, 50H)
- END LScroll;
- (* Searching a List for a Particular Item *)
- PROCEDURE LSearch* (dataPtr: MacTypes.Ptr; dataLen: INTEGER; searchProc: MacTypes.Ptr;
- VAR theCell: Cell; lHandle: ListHandle): BOOLEAN;
- BEGIN
- RETURN lSearch(dataPtr, dataLen, searchProc, theCell, lHandle, 54H)
- END LSearch;
- (* Changing the Size of Cells and Lists *)
- PROCEDURE LSize* (listWidth: INTEGER; listHeight: INTEGER; lHandle: ListHandle);
- BEGIN
- lSize(listWidth, listHeight, lHandle, 60H)
- END LSize;
- PROCEDURE LCellSize* (cSize: QuickDraw.Point; lHandle: ListHandle);
- BEGIN
- lCellSize(cSize, lHandle, 14H)
- END LCellSize;
- (* Getting Information About Cells *)
- PROCEDURE LNextCell* (hNext, vNext: BOOLEAN; VAR theCell: Cell; lHandle: ListHandle): BOOLEAN;
- BEGIN
- RETURN lNextCell(hNext, vNext, theCell, lHandle, 48H)
- END LNextCell;
- PROCEDURE LRect* (VAR cellRect: QuickDraw.Rect; theCell: Cell; lHandle: ListHandle);
- BEGIN
- lRect(cellRect, theCell, lHandle, 4CH)
- END LRect;
- PROCEDURE LLastClick* (lHandle: ListHandle; VAR theCell: Cell);
- VAR pt: LONGINT;
- BEGIN
- pt := lLastClick(lHandle, 40H);
- theCell.h := SHORT(pt MOD 65536); theCell.v := SHORT(pt DIV 65536)
- END LLastClick;
- END MacListMgr.
- TextControllers.StdCtrlDesc
- TextControllers.ControllerDesc
- Containers.ControllerDesc
- Controllers.ControllerDesc
- TextRulers.StdRulerDesc
- TextRulers.RulerDesc
- TextRulers.StdStyleDesc
- TextRulers.StyleDesc
- TextRulers.AttributesDesc
- Helvetica
- Documents.ControllerDesc
-